


data = KINEMATICSPIG_DATA(data,settings) computes global pelvis and lower-limb
joint angles based on the joint coordinate system of Grood and Suntay (1983)
ARGUMENTS
data ... Zoo data
graphs ... true or false (boolean). Graph comparisons against PiG data,
if available . Default: false
RETURNS
data ... zoo data appended with kinemaitc channels
ERR ... structured array containing RMS error values for each angle
NOTES:
- It is anatomically implausible for the vectors to flip during walking but may be
possible for tasks with large ranges of motion (e.g. running). A correction has been
implemented at the knee, but might require future updates (see 'checkflippg' function).
- For PiG, choice of axes for angle computation based on detailed work of Vaughan
(Dynamics of Human Gait 1999, Appendix B p94-96). This is the Grood and Suntay method.
- For OFM choice of axes based on trial and error.
SUMMARY OF CALCULATIONS
floating axis (PIG) = cross(lat_prox , long_dist)
Pelvis
flx = asind(dot(-long_dist,lat_prox,2));
abd = asind(dot(long_dist,ant_prox,2));
twix = asind( dot(ant_dist,ant_prox,2)./cosd(flx));
twiy = asind( dot(ant_dist,lat_prox,2)./cosd(flx));
* adjustments made on direction of travel
Hip & Knee
flx = asind(dot(floatax,long_prox,2));
abd = asind(dot(lat_prox,long_dist,2));
tw = asind(dot(floatax,lat_dist,2));
Ankle PiG
flx = asind(dot(floatax,ant_prox,2));
abd = asind(dot(lat_prox,long_dist,2));
tw = asind(dot(floatax,lat_dist,2));
See also makebones, bmech_kinematicsPiG, bmech_jointcentrePiG